package distributedbank.fdservice;

/**
 * There are total 7 FDServers in the FDService. The service tolerates up to 3
 * Byzantine Failures. The FDServers maintain their own states about the
 * activity status of all bank branches.
 * 
 * FDServers only communicate with the FDVoter. They receive VoterRequests and
 * reply FDServerResponses.
 * 
 */
public class FailureDetectionServer {
	// useless id
	private int fdServerId;

	public FailureDetectionServer(int id) {
		fdServerId = id;
		this.run();
	}

	/**
	 * Listen to VoterRequest. Change the live-status of a BankBranch specified
	 * in VoterRequest. Reply a FDServerResponse to FDVoter.
	 * 
	 * Note: A Byzantine FDServer may reply anything. If we add a way to damage
	 * this FDServer, we should let it reply anything to Voter.
	 */
	private void run() {
		// TODO
	}

	public static void main(String[] args) {
		new FailureDetectionServer(Integer.parseInt(args[0]));
	}
}
